package com.css.devops.service;

import java.util.List;
import java.util.Map;

public interface DevopsJob {

	/**
	 * 创建 Job
	 */
	void ceateJob(com.css.devops.domain.Job devopsJob);

	/**
	 * 更新 Job
	 *
	 * 更改之前创建的无参数Job，更改其为参数Job
	 */
	void updateJob(com.css.devops.domain.Job job);

	/**
	 * 获取 Job 基本信息
	 */
	com.css.devops.domain.Job getJob(String jobName);

	/**
	 * 获取 Maven Job 信息
	 */
	void getMavenJob();

	/**
	 * 获取 Job 列表
	 */
	List<com.css.devops.domain.Job> getJobList();

	/**
	 * 获取 View 名称获取 Job 列表
	 */
	List<com.css.devops.domain.Job> getJobListByView(String viewName);

	/**
	 * 查看 Job XML 信息
	 */
	String getJobConfig(String jobName);

	/**
	 * 执行无参数 Job build
	 */
	void buildJob(String jobName);

	/**
	 * 执行带参数 Job build
	 */
	void buildParamJob(String jobName,Map<String,String> param);

	/**
	 * 停止最后构建的 Job Build
	 */
	void stopLastJobBuild(String jobName);

	/**
	 * 删除 Job
	 */
	void deleteJob(String jobName);

	/**
	 * 禁用 Job
	 */
	void disableJob(String jobName);

	/**
	 * 启用 Job
	 */
	void enableJob(String jobName);

}